package com.amigo.online.provider.video.model.entity;

import javax.persistence.Column;
import javax.persistence.Table;
import javax.persistence.Transient;

import org.apache.ibatis.type.Alias;

import com.amigo.online.common.base.entity.BaseEntity;
import com.amigo.online.common.param.result.MusicInfo;


/**
 * 视频实体类
 *
 * @author amigo
 */
@Table(name = "video_tbl")
@Alias(value = "video")
public class Video extends BaseEntity {

    /**
     *
     */
    private static final long serialVersionUID = 3675910892723814675L;

    /**
     * 用户ID
     */
    @Column(name = "user_id")
    private Long userId;

    /**
     * 视频地址
     */
    @Column(name = "video")
    private String video;

    /**
     * 视频封面
     */
    @Column(name = "cover")
    private String cover;

    /**
     * 视频时长
     */
    @Column(name = "duration")
    private Integer duration;

    /**
     * 跳转地址
     */
    @Column(name = "href")
    private String href;

    /**
     * 类型
     */
    @Column(name = "type")
    private Integer type;

    /**
     * 是否是广告
     */
    @Column(name = "ads")
    private Integer ads;

    /**
     * 是否推荐
     */
    @Column(name = "recommended")
    private Integer recommended;

    /**
     * 经度
     */
    @Column(name = "longitude")
    private String longitude;

    /**
     * 纬度
     */
    @Column(name = "latitude")
    private String latitude;

    /**
     * 点赞数
     */
    @Column(name = "up")
    private Integer up;

    /**
     * 观看数
     */
    @Column(name = "look")
    private Integer look;

    /**
     * 评论数
     */
    @Column(name = "comment")
    private Integer comment;

    /**
     * 是否默认24小时销毁
     */
    @Column(name = "destroy")
    private Integer destroy;

    /**
     * 标题
     */
    @Column(name = "title")
    private String title;

    /**
     * 内容
     */
    @Column(name = "content")
    private String content;

    /**
     * 更新时间
     */
    @Column(name = "updated_time")
    private Long updatedTime;

    /**
     * 是否删除
     */
    @Column(name = "deleted")
    private Integer deleted;

    /**
     * 删除时间
     */
    @Column(name = "deleted_time")
    private Long deletedTime;

    /**
     * 视频宽
     */
    @Column(name = "width")
    private Integer width;

    /**
     * 视频高
     */
    @Column(name = "height")
    private Integer height;

    @Column(name = "location_id")
    private Integer location_id;
    /**
     * 视频高
     */
    @Column(name = "share")
    private Integer share;

    @Transient
    private Music music;
    /**
     * 用户昵称
     */
    @Transient
    private String nickname;
    /**
     * 头像
     */
    @Transient
    private String avatar;
    @Transient
    private MusicInfo musicInfo;
    @Column(name = "area_id")
    private Long areaId;

    @Column(name = "music_id")
    private Long musicId;

    /**
     * 视频带水印链接
     */
    @Column(name = "watermark_video")
    private String waterMarkVideo;

    @Column(name = "is_allowe_promote")
    private Integer allowe_promoted;    //是否允许推广 0允许 1禁止

    public MusicInfo getMusicInfo() {
        return musicInfo;
    }

    public void setMusicInfo(MusicInfo musicInfo) {
        this.musicInfo = musicInfo;
    }

    public Long getMusicId() {
        return musicId;
    }

    public void setMusicId(Long musicId) {
        this.musicId = musicId;
    }

    public Long getUserId() {
        return userId;
    }

    public void setUserId(Long userId) {
        this.userId = userId;
    }

    public String getVideo() {
        return video;
    }

    public void setVideo(String video) {
        this.video = video;
    }

    public String getCover() {
        return cover;
    }

    public void setCover(String cover) {
        this.cover = cover;
    }

    public Integer getDuration() {
        return duration;
    }

    public void setDuration(Integer duration) {
        this.duration = duration;
    }

    public String getHref() {
        return href;
    }

    public void setHref(String href) {
        this.href = href;
    }

    public Integer getType() {
        return type;
    }

    public void setType(Integer type) {
        this.type = type;
    }

    public Integer getAds() {
        return ads;
    }

    public void setAds(Integer ads) {
        this.ads = ads;
    }

    public Integer getRecommended() {
        return recommended;
    }

    public void setRecommended(Integer recommended) {
        this.recommended = recommended;
    }

    public String getLongitude() {
        return longitude;
    }

    public void setLongitude(String longitude) {
        this.longitude = longitude;
    }

    public String getLatitude() {
        return latitude;
    }

    public void setLatitude(String latitude) {
        this.latitude = latitude;
    }

    public Integer getUp() {
        return up;
    }

    public void setUp(Integer up) {
        this.up = up;
    }

    public Integer getLook() {
        return look;
    }

    public void setLook(Integer look) {
        this.look = look;
    }

    public Integer getComment() {
        return comment;
    }

    public void setComment(Integer comment) {
        this.comment = comment;
    }

    public Integer getDestroy() {
        return destroy;
    }

    public void setDestroy(Integer destroy) {
        this.destroy = destroy;
    }

    public String getTitle() {
        return title;
    }

    public void setTitle(String title) {
        this.title = title;
    }

    public String getContent() {
        return content;
    }

    public void setContent(String content) {
        this.content = content;
    }

    public Long getUpdatedTime() {
        return updatedTime;
    }

    public void setUpdatedTime(Long updatedTime) {
        this.updatedTime = updatedTime;
    }

    public Integer getDeleted() {
        return deleted;
    }

    public void setDeleted(Integer deleted) {
        this.deleted = deleted;
    }

    public Long getDeletedTime() {
        return deletedTime;
    }

    public void setDeletedTime(Long deletedTime) {
        this.deletedTime = deletedTime;
    }

    public Integer getWidth() {
        return width;
    }

    public void setWidth(Integer width) {
        this.width = width;
    }

    public Integer getHeight() {
        return height;
    }

    public void setHeight(Integer height) {
        this.height = height;
    }

    public Music getMusic() {
        return music;
    }

    public void setMusic(Music music) {
        this.music = music;
    }

    public String getNickname() {
        return nickname;
    }

    public void setNickname(String nickname) {
        this.nickname = nickname;
    }

    public String getAvatar() {
        return avatar;
    }

    public void setAvatar(String avatar) {
        this.avatar = avatar;
    }

    public Integer getLocation_id() {
        return location_id;
    }

    public void setLocation_id(Integer location_id) {
        this.location_id = location_id;
    }

    public Integer getShare() {
        return share;
    }

    public void setShare(Integer share) {
        this.share = share;
    }

    public Long getAreaId() {
        return areaId;
    }

    public void setAreaId(Long areaId) {
        this.areaId = areaId;
    }

    public String getWaterMarkVideo() {
        return waterMarkVideo;
    }

    public void setWaterMarkVideo(String waterMarkVideo) {
        this.waterMarkVideo = waterMarkVideo;
    }

    public Integer getAllowe_promoted() {
        return allowe_promoted;
    }

    public void setAllowe_promoted(Integer allowe_promoted) {
        this.allowe_promoted = allowe_promoted;
    }

}
